home *** CD-ROM | disk | FTP | other *** search
- //
- // Global.h Part of Cassandra
- //
- // Copyright (c) 1989, 1990, 1991 by Jiro Nakamura
- // All rights reserved
- //
- // RCS Information
- // Revision Number-> $Revision: 2.9 $
- // Last Revised-> $Date: 91/12/20 15:36:28 $
- //
-
-
- #import <appkit/Panel.h>
- #import <time.h>
- #import <soundkit/Sound.h>
- #import "cass.h"
-
- #define CLOCK_ANALOG 0
- #define CLOCK_DIGITAL 1
- #define CLOCK_NONE 2
-
- @interface Global:Panel
- {
- Sound *soundfile;
- float oldVolumeLeft, oldVolumeRight; // Previous volume levels
-
- char directory[128];
- char eventFile[128];
- char eventLogFile[128];
- char notepadFile[128];
- char sourceLoginFile[128]; // Command to execute to source
- char sourceLogoutFile[128]; // Command to execute to source
-
- /* links to previous and next records and itself */
- EFileLink present, previous, next;
-
- struct tm ts; // time structure see ctime(3) for details
-
- int lowPriority, // The lowest priority for an event to
- highPriority, // be visible. The highest to highlight
- clockBitmapNumber, // Bitmap number of the clock
- clockType; // Clock type 0 = analog, 1 = digital,
- // 2 = none
- float alarmVolume; // Volume to play alarm at, 0.0-1.0
- // -1 = play at system volume
-
- BOOL showSeconds, // Show seconds on the display?
- showDate, // Show date on clock appIcon?
- todayShowTime, // Should today show the time?
- guru, // Is the user is a cassandra guru
- hideOnLaunch, // Hide us on launch?
- compressEvents, // Compress event file after quitting
- overviewOnLaunch, // Whether to open Overview on launch
- notepadOnLaunch , // Whether to open Notepad on launch
- eventLogOnLaunch, // Whether to open EventLog on launch
- todayOnLaunch, // Whether to open Today on launch
- weekOnLaunch, // ditto
- playAlarm, // Should we play an alarm sound?
- militaryTime, // Whether we are operating on
- // military or am/pm time
- saveScreen, // Save the screen?
- sourceLoginOnLaunch, // Source login-file on launch?
- autoLaunched; // auto-launched?
-
- char screenSaver[128]; // Path to the screenSaver program
- char alarmSound[128]; // The alarm sound file
- char msg[MESSAGE_SIZE]; // message buffer
- char fontName[64]; // The default font to use in windows
- double fontSize; // and its size
-
- NXRect overviewFrame, // The coordinates and size of the
- eventLogFrame, // Overview, EventLog,
- notepadFrame, // Notepad and
- todayFrame, // Today windows
- weekFrame; // week windows too
-
- id cassandra; // Set by IB. Cassandra main.
- id overview; // " " . The Overview window
- id eventLog; // " " . The EventLog window
- id notepad; // " " . The Notepad window
- id today; // " " . The Today window
- id week; // " " week window
-
- id alarmSoundButton;
- id alarmSoundForm;
- id playButton;
- id setButton;
- id stopButton;
-
- id guruButton;
- id showSecondsButton;
- id showDateButton;
- id todayShowTimeButton;
- id compressEventsButton;
-
- id screenSaverButton;
- id screenSaverForm;
- id setScreenSaverButton;
- id testScreenSaverButton;
-
- id hideOnLaunchButton;
- id overviewOnLaunchButton;
- id notepadOnLaunchButton;
- id eventLogOnLaunchButton;
- id sourceLoginOnLaunchButton;
- id todayOnLaunchButton;
- id weekOnLaunchButton;
-
- id clockTypeButton;
- id clockFaceMatrix;
- id militaryTimeButton;
- id volumeSlider;
- id volumeTextField;
- id volumeButton;
- }
-
- + initialize; // Initialize ourself and the defaults database
-
- - load:sender; // Load in default values from the defaults database
- - display:sender; // Open the panel and display these values
- - save; // For compatibility with TextWindow save method
- - save:sender; // Save the values off display
- - close; // Close the panel
-
- - saveWindowPositions: sender; // Call other windows for their position
- // and save the position for future reference
- - saveThisWindowPosition: (char *) defaultName : (id) window; // Save
- // only the calling window.
-
- - guru: sender; // Guru button hit (not implemented)
- - windowChanged: sender; // The window has changed.
- - clockTypeChanged: sender;
-
- - sound: sender; // Sound activated/deactivated
- - playSound:sender; // Play the sound
- - stopSound:sender; // Stop playing the sound
- - setSound:sender; // Set the sound
- - checkSound:sender; // Check to see if user has valid
- // sound path
-
- - screenSaverChanged: sender; // screensaver activated/deact
- - testScreenSaver: sender; // test screensaver
- - setScreenSaver: sender; // set screensaver
- - checkScreenSaver: sender; // see if valid screensaver
-
-
- - volumeButtonHit: sender; // Volume enabled/disabled
- - trackVolumeSlider: sender; // Track the volume slider
-
- // ============================
- // For info on what these
- // return, see above declarations
- // ============================
- - (int) lowPriority;
- - (int) highPriority;
- - (int) clockType;
- - (float) volume;
- - (const char *) alarmSound;
- - (const char *) eventFile;
- - (const char *) eventLogFile;
- - (const char *) notepadFile;
- - (const char *) clockfaceBitmapName;
- - (const char *) fontName;
- - (const char *) screenSaver;
- - (const char *) sourceLoginFile;
- - (const char *) sourceLogoutFile;
- - (double) fontSize;
-
- - (BOOL) compressEvents;
- - (BOOL) guru;
- - (BOOL) militaryTime;
- - (BOOL) playAlarm;
- - (BOOL) saveScreen;
- - (BOOL) showSeconds;
- - (BOOL) showDate;
-
- - (BOOL) eventLogOnLaunch;
- - (BOOL) hideOnLaunch;
- - (BOOL) notepadOnLaunch;
- - (BOOL) overviewOnLaunch;
- - (BOOL) sourceLoginOnLaunch;
- - (BOOL) todayOnLaunch;
- - (BOOL) todayShowTime;
- - (BOOL) weekOnLaunch;
- - (BOOL) autoLaunched;
-
- - (NXRect *) overviewFrame; // Return the default frame (window)
- - (NXRect *) eventLogFrame; // size for these windows
- - (NXRect *) notepadFrame;
- - (NXRect *) todayFrame;
- - (NXRect *) weekFrame;
- @end
-